#include #include #define sensorPin 13 #define buzzerPin 7 #define redLed 8 #define greenLed 9 #define ldrA A1 #define ldrB A2 int servoPin = 10; // Create a servo object Servo Servo1; LiquidCrystal lcd (12 , 11, 5 , 4 , 3 , 2 ); int threshold = 200; void setup() { lcd.begin(16, 2); pinMode(sensorPin, INPUT); pinMode(buzzerPin, OUTPUT); pinMode(redLed, OUTPUT); pinMode(greenLed, OUTPUT); pinMode(ldrA, INPUT); pinMode(ldrB, INPUT); pinMode( servoPin, OUTPUT); Servo1.attach(servoPin); } void loop() { // put your main code here, to run repeatedly: lcd.clear(); lcd.print ("Hello,Insert"); lcd.setCursor(0, 1); lcd.print ("1 coin."); Servo1.write(0); delay(1000); while (digitalRead(sensorPin) == 1); //no coin lcd.clear(); lcd.print ("coin inserted."); lcd.setCursor(0, 1); lcd.print("choose A or B"); while ((analogRead(ldrA) > threshold) && (analogRead(ldrB) > threshold)); //no hand lcd.clear(); if (analogRead(ldrA) < threshold) { //no hand lcd.print ("You chosing A"); digitalWrite(redLed, HIGH); digitalWrite(buzzerPin, HIGH); Servo1.write(180); delay(1000); delay(100); digitalWrite(redLed, LOW); digitalWrite(buzzerPin, LOW); Servo1.write(0); delay(1000); } else if (analogRead(ldrB) < threshold) { //no hand lcd.print ("You chosing B"); digitalWrite(greenLed, HIGH); digitalWrite(buzzerPin, HIGH); Servo1.write(180); delay(1000); delay(100); digitalWrite(greenLed, LOW); digitalWrite(buzzerPin, LOW); Servo1.write(0); delay(1000); } delay(5000); }